package com.zhixing.reward;

import com.zhixing.common.annotation.Passenger;
import com.zhixing.common.domain.entity.CouponUseInfo;
import com.zhixing.common.utils.Res;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PutMapping;

@FeignClient("reward-service")
public interface RewardClient {

    /**
     * 根据id获取优惠券使用信息
     * @param couponId 优惠券id
     * @return Coupon 优惠券使用信息
     */
    @Passenger
    @GetMapping("/coupon/{couponId}")
    Res<CouponUseInfo> getCouponUseInfoById(@PathVariable Integer couponId);

    /**
     * 使用优惠券
     * @param couponId 优惠券id
     * @return 操作结果
     */
    @Passenger
    @PutMapping("/coupon/use/{couponId}")
    Res<Void> useCoupon(@PathVariable Integer couponId);
}
